package cn.net.cfss.fgbp.api.console.inte;


import cn.net.cfss.fgbp.api.console.constant.Constants;
import cn.net.cfss.fgbp.api.console.vo.SysAppMenuVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import java.util.List;

/**
 * @author oygq
 * @title: IAppMenuService
 * @description: 应用菜单接口类
 * @date 2019/4/3 11:16
 */
@FeignClient(name = Constants.SPI_SERVER_NAME)
@RequestMapping("appMenu")
public interface ISysAppMenuService {

    @RequestMapping(value = "/add", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
    public boolean insert(@RequestBody SysAppMenuVo vo);

    @RequestMapping(value = "/edit", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
    public boolean update(@RequestBody SysAppMenuVo vo);

    @RequestMapping(value = "/delete/{appMenuId}", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
    public boolean delete(@PathVariable(value = "appMenuId") String appMenuId);

    @RequestMapping(value = "/deleteBatch", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
    public boolean deleteBatch(@RequestBody String[] appMenuIds);

    @RequestMapping(value = "/query/{appId}", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
    public List<String> queryByAppId(@PathVariable(value = "appId") String appId);

    @RequestMapping(value = "/delete", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
    public boolean deleteByMenus(@RequestBody SysAppMenuVo vo);
}
